package at.ac.tuwien.swa.sparrow.server

import ac.at.tuwien.infosys.swa.audio.Fingerprint
import at.ac.tuwien.swa.sparrow.common.{Ticket, TrackResult, AuthToken}
import java.util.UUID

trait ClientService {

	def login(username: String, password: String): AuthToken

	def logout()

	def register(username: String, password: String): Boolean

	def token(oldToken: AuthToken): AuthToken

	def buy(amount: Int): Long

	def request(authToken: AuthToken, fp: Fingerprint): Ticket

	def result(ticketId: UUID): TrackResult
}
